package com.bsdk.install.device.gateway.v2;


import com.alibaba.fastjson2.JSONObject;
import com.bsdk.common.core.domain.AjaxResult;
import com.bsdk.common.utils.SpringContextUtil;
import com.bsdk.install.device.LockBase;
import com.bsdk.install.device.driver.mqtt.MqttSendCmd;
import com.bsdk.install.device.lockLora.LockLora;

import java.util.Date;

public class DeviceCmd extends LockBase implements LockLora {

    private final String topicDown = "server/gateway/";

    public DeviceCmd(String devId, String mac) {

        this.setcMac(mac);
        this.setDevId(devId);


    }

    public DeviceCmd() {

    }

    @Override
    public AjaxResult commandPingLock(String devId) {
        return null;
    }
    @Override
    public AjaxResult commandRegistLock(String devId) {
        return null;
    }

    @Override
    public AjaxResult commandOpenRemote() {
        return null;
    }

    @Override
    public AjaxResult commandCloseRemote() {
        return null;
    }

    @Override
    public AjaxResult commandReset() {
        return null;
    }

    @Override
    public AjaxResult commandSyncTime() {
        return null;
    }

    @Override
    public AjaxResult commandAddUser(boolean admin,String pwType, String pw, Date startTime, Date endTime, int userId) {
        return null;
    }
    @Override
    public AjaxResult commandAddUser(boolean admin,String pwType, String pw, Date startTime, Date endTime, int userId,JSONObject cycle,int times) {
        return null;
    }

    @Override
    public AjaxResult commandActiveOrDisableUser(boolean active, int userId) {
        return null;
    }

    @Override
    public AjaxResult commandEditPasswordById(String pw, int userId) {
        return null;
    }

    @Override
    public AjaxResult commandAddKey(String key) {
        return null;
    }

    @Override
    public AjaxResult commandEditExpireTimeById(Date startTime, Date endTime, int userId) {
        return null;
    }

    @Override
    public AjaxResult commandDeleteUserById(int userId) {
        return null;
    }

    @Override
    public AjaxResult commandGetBriefPassword(Date startTime, Integer duration, String key) {
        return null;
    }

    @Override
    public JSONObject result(JSONObject jsonObject) {
        return null;
    }

    @Override
    public AjaxResult send(JSONObject jsonObject) {

        return SpringContextUtil.getBean(MqttSendCmd.class).send(jsonObject);

    }

}
